#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
运行宠物用品编辑功能测试的脚本
"""
import os
import sys
import time
import pytest
from datetime import datetime

# 获取项目根目录
current_dir = os.path.dirname(os.path.abspath(__file__))
project_root = current_dir
sys.path.insert(0, project_root)

if __name__ == "__main__":
    # 获取当前时间戳
    timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
    
    # 设置报告文件名
    report_file = f"tests/reports/edit_product_test_report_{timestamp}.html"
    
    # 设置日志文件名
    log_file = f"logs/edit_product_test_{timestamp}.log"
    
    # 确保日志目录存在
    os.makedirs("logs", exist_ok=True)
    
    # 确保报告目录存在
    os.makedirs("tests/reports", exist_ok=True)
    
    # 构建pytest命令行参数
    args = [
        "-v",  # 详细输出
        "--tb=native",  # 更详细的错误追踪
        "--capture=no",  # 允许打印输出到控制台
        "tests/test_cases/test_edit_product.py",  # 运行编辑商品测试
        f"--html={report_file}",  # HTML报告
        f"--log-file={log_file}",  # 日志文件
        "--log-file-level=DEBUG",  # 日志级别设为DEBUG，记录更多信息
    ]
    
    # 运行测试
    print(f"开始运行宠物用品编辑测试，报告将生成在: {report_file}")
    result = pytest.main(args)
    
    # 输出测试结果
    if result == 0:
        print(f"测试成功完成！报告已生成: {report_file}")
    else:
        print(f"测试失败，请查看日志文件获取详细错误信息: {log_file}")
    
    print(f"日志已保存: {log_file}") 